#ifndef MYDIALOG_H
#define MYDIALOG_H

#include <QObject>
#include "QSimpleLed.h"
#include "bluetoothwideget.h"
#include "uploadfile.h"
#include "userinfo.h"
#include "customslider.h"
#include "ModbusTcpDialog.h"

extern QStringList modeCheck;  //使用extern声明外部变量，方便后续在bluetoothwidget中调用modeCheck数组（注：1、此处声明之后，必须在使用地方再次定义modeCheck才能正常使用，此处extern相当于和外部的接口。2、外部变量extern要放在最开始，一定不要放在class类中，否则会报错）

class MyDialog : public QObject
{
    Q_OBJECT
public:
    explicit MyDialog(QObject *parent = nullptr);

    void createdTimeDialog(QWidget*,CustomSlider*);       //创建检测时间对话框
    void createdSerialportDialog(); //创建串口识别对话框
    QSimpleLed* createdStatusLamp(QSimpleLed*);//创建状态灯
    void createdQuaternionDialog(QWidget*); //创建四元数示例对话框
    void createdUploadFile(QWidget*);       //创建上传文件对话框
    void createdUserInfo(QWidget*);         //创建用户信息录入对话框
    void createdThreeFuctionDialog(QWidget*,double*);   //创建三大模块对话框
    void createdGaitSubmodeDialog(QWidget*);    //创建步态检测子模式对话框
    void createdStandSubmodeDialog(QWidget*);    //创建静态站立检测子模式对话框
    void createdInstantaneousDialog(QWidget*); //创建瞬时模式对话框
    void createdModBusTcpDialog(QWidget*);      //创建modbusTcp通信对话框
    void createCurrentModeShow(QWidget*,QString);       //显示当前所处的测试模式对话框
    void createFinishTest(QWidget*,double*,double*);        //所有选择模式检测完成后提示框
    void createNoModeChoose(QWidget*);      //没有进行模式选择提示框

    void initCustomPlot(QWidget*,QWidget*,QTreeWidget*,QList<QCustomPlot*>);  //初始化customplot

private:
        uploadFile uploadFile;
        UserInfo *userInfo;
        ModbusTcpDialog* ipConfigure;

//        double *detectionTime = (double*)malloc(sizeof(double));
        double detectionTime = 3; //设置测试时间
       QString work_floder,save_floder;
       int printContentChoose = 0;
signals:


private slots:


};

#endif // MYDIALOG_H
